/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.senac.maisconhecimento.dao;

import br.senac.maisconhecimento.entidade.Estabelecimento;
import java.util.List;
import javax.persistence.Query;
import org.hibernate.Session;

/**
 *
 * @author Marcus Lemos
 */
public class EstabelecimentoDAO extends GenericDao<Estabelecimento> {

    private Session session = HibernateUtil.getSessionFactory().openSession();

    @SuppressWarnings("unchecked")
    public List<Estabelecimento> listar() {
        List<Estabelecimento> lista = null;
        try {
            String sql = "Select e from Estabelecimento as e";

            session.beginTransaction();
            org.hibernate.Query query = session.createQuery(sql);
            lista = (List<Estabelecimento>) query.list();
            session.getTransaction().commit();

        } catch (Exception e) {
            session.getTransaction().rollback();
        }

        return lista;
    }

    public Estabelecimento consultar(Integer codigo) {
        Estabelecimento entidade = new Estabelecimento();
        try {
            session.beginTransaction();
            entidade = (Estabelecimento) session.load(Estabelecimento.class, codigo);
            session.getTransaction().commit();
        } catch (Exception e) {
            session.getTransaction().rollback();
        }

        return entidade;
    }
}
